package com.framework.constantes;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import java.util.Locale;

public class IConstantes {

	public static final int TIMER_KEEP_ALIVE = 80000;
	public static final Integer TIEMPO_NOTIFICACIONES_LARGO = 8000;
	public static final Integer TIEMPO_NOTIFICACIONES_MEDIO = 5000;
	public static final Integer TIEMPO_NOTIFICACIONES_GENERALES = 2000;

	/* para controlar el tenguaje estandar */
	public static final Locale locale = new Locale("es", "CO");

	public static final String CODIGO_MEDICO_DEFECTO = "000000000";
	public static final String CENTRO_ATENCION_CUALQUIERA = "000";

	public static final String TIPO_HISTORIA_PRIMERA_VEZ = "1";
	public static final String TIPO_HISTORIA_CONTROL = "2";

	public static final String CONS_HISTORIA_CLINICA = "HISTORIA_CLINICA";

	public static final String CONS_HIPERTENSO_DIABETICO = "HIPERTENSO_DIABETICO";
	public static final String CONS_DETENCION_EMBARAZO = "DETENCION_EMBARAZO";
	public static final String CONS_PUNTOS_GRAFICA_EMBARAZO = "PUNTOS_GRAFICA_EMBARAZO";
	public static final String CONS_PRESULTADOS_PARACLINICOS = "PRESULTADOS_PARACLINICOS";
	public static final String CONS_PHISTORIAS_CLINICAS = "PHISTORIAS_CLINICAS";
	public static final String CONS_PEXAMENES_PARACLINICOS = "PEXAMENES_PARACLINICOS";
	public static final String CONS_ADULTO_MAYOR = "ADULTO_MAYOR";
	public static final String CONS_ALTERACION_JOVEN = "ALTERACION_JOVEN";
	public static final String CONS_NINO_MENOR_2A5_ANIOS = "MENOR_2A5_ANIOS";
	public static final String CONS_NINO_MENOR_2MESES = "MENOR_2MESES";
	public static final String CONS_NINO_DE_2MESES_2ANIOS = "MENOR_2MESES_2ANIOS";
	public static final String CONS_NINO_DE_5ANIOS_10ANIOS = "MENOR_5ANIOS_10ANIOS";
	public static final String CONS_CENTRO_ATENCION = "CENTRO_ATENCION";
	public static final String CONS_PSICOLOGIA = "PSICOLOGIA";
	public static final String CONS_PSIQUIATRIA = "PSIQUIATRIA";
	public static final String CONS_URGENCIA_ODONTOLOGICO = "URGENCIA_ODONTOLOGICO";
	public static final String CONS_CONSULTA_EXTERNA = "CONSULTA_EXTERNA";
	public static final String CONS_FICHA_EPIDEMIOLOGIA = "FICHA_EPIDEMIOLOGIA";
	public static final String CONS_CONSULTORIO = "CONSULTORIO";
	public static final String PLANIFICACION_FAMILIAR = "PLANIFICACION_FAMILIAR";
	public static final String ID_CONTRATOS = "CONTRATOS";
	public static final String ODONTOLOGIA = "ODONTOLOGIA";
	public static final String CONS_AIEPI_MENOR_2MESES = "AIEPI_MENOR_2MESES";

	public static final String CONS_ORDENES_MEDICAS = "ORDENES_MEDICAS";

	public static final String CONS_HISTORIA_PARTO = "HISTORIA_PARTO";

	public static final String CONS_AIEPI_MENOR_2MESES_5ANIOS = "AIEPI_MENOR_2MESES_5ANIOS";

	public static final String CONS_RECIEN_NACIDO = "RECIEN_NACIDO";
	public static final String CONS_MUESTRA_CITOLOGIA = "MUESTRA_CITOLOGIA";

	public static final String PARAMETRO_TODO = "parametroTodo";
	public static final String HISTORIA_CLINICA_UCI = "HISTORIA_CLINICA_UCI";
	public static final String HISTORIA_CLINICA_UCI2 = "HISTORIA_CLINICA_UCI2";

	public static final String CONS_HIS_TRIAGE = "HIS_TRIAGE";
	public static final String CONS_ANEXO_9 = "ANEXO_9";
	public static final String CONS_ANEXO_1 = "ANEXO_1";
	public static final String CONS_HIS_TUBERCULOSIS = "HIS_TUBERCULOSIS";
	public static final String CONS_HIS_TUBERCULOSIS_CONTACTOS = "HIS_TUBERCULOSIS_CONTACTOS";
	public static final String CONS_HIS_TUBERCULOSIS_EVALUACION = "HIS_TUBERCULOSIS_EVALUACION";

	public static final String CONS_FICHA_INICIO_LEPRA = "CONS_FICHA_INICIO_LEPRA";
	public static final String CONS_SEGUIMIENTO_CONTROL_PQT = "SEGUIMIENTO_CONTROL_PQT";
	public static final String CONS_DISCAPACIDADES_LEPRA = "DISCAPACIDADES_LEPRA";
	public static final String CONS_CONTROL_CONVIVIENTES = "CONTROL_CONVIVIENTES";

	public static final String CONS_ANEXO_10 = "ANEXO_10";
	public static final String CONS_PYP_ATENCION_PREVENTIVA_SALUDORAL = "PYP_ATENCION_PREVENTIVA_SALUDORAL";
	public static final String CONS_PYP_ALTERACIONES_ADULTO = "PYP_ALTERACIONES_ADULTO";
	public static final String CONS_PYP_ALTERACIONES_CRECIMIENTO_DESARROLLO = "PYP_ALTERACIONES_CRECIMIENTO_DESARROLLO";
	public static final String CONS_PYP_ALTERACIONES_JOVEN = "PYP_ALTERACIONES_JOVEN";
	public static final String CONS_PYP_ALTERACIONES_AGUDEZA_VISUAL = "PYP_ALTERACIONES_AGUDEZA_VISUAL";
	public static final String CONS_PYP_PLANIFICACION_FAMILIAR = "PYP_PLANIFICACION_FAMILIAR";
	public static final String CONS_PYP_CONTROL_PRENATAL = "PYP_CONTROL_PRENATAL";
	public static final String CONS_PYP_PROGRAMA_AMPLIADO_INMUNIZACION = "PYP_PROGRAMA_AMPLIADO_INMUNIZACION";
	public static final String CONS_PYP_CANCER_CUELLO_UTERINO = "PYP_CANCER_CUELLO_UTERINO";
	public static final String CONS_PYP_ATENCION_DEL_PARTO = "PYP_ATENCION_DEL_PARTO";
	public static final String CONS_PYP_ATENCION_DE_RECIEN_NACIDO = "PYP_ATENCION_DE_RECIEN_NACIDO";
	public static final String CONS_PYP_DETENCION_CANCER_SENO = "PYP_DETENCION_CANCER_SENO";
	public static final String FILE_CONFIG = "lock.sfto";

	public static final String CONS_ANEXO_3_ENTIDAD = "ANEXO_3_ENTIDAD";

	public static final String CONS_PROGRAMAS = "CONS_PROGRAMAS";

	public static final String CONS_PAQUETES_SERVICIOS = "PAQUETES_SERVICIOS";

	public static final String CONS_NOTAS_ENFERMERIA = "NOTAS_ENFERMERIA";

	public static final String CONS_REGISTRO_MEDICAMENTOS = "REGISTRO_MEDICAMENTOS";

	/* regimen */
	public static final String REGIMEN_CONTRIBUTIVO = "1";
	public static final String REGIMEN_SUBCIDIADO = "2";

	/* codigos de diagnosticos de lepra */
	public static final String CODIGOS_CIE_LEPRA = "A300,A301,A302,A303,A304,A305,A308,A309";

	/* codigos de diagnosticos de tuberculosis */
	public static final String CODIGOS_CIE_TUBERCULOSIS = "A150,A151,A152,A153,A154,A155,A156,A157,A159,A170,A171,A178,A179,A180,A181,A182,A183,A184,A185,A186,A188,A190,A191,A192,A198,A199";

	/* id de los grupos etários */
	public static final String ID_GRUPOS_ETARIOS = "GRUPOS_ETARIOS";

	/* codigos de los roles de usuario */
	public static final String ROL_MEDICO_CONSULTA_EXTERNA = "05";

	public static final String ROL_MEDICO_URGENCIAS = "11";

	/* codigos del tipo de orden de servicio */
	public static final String TIPO_ORDEN_AMBULATORIA = "1";

	public static final String TIPO_ORDEN_URGENCIA = "2";

	public static final String TIPO_ORDEN_HOSPITALIZACION = "3";

	/* codigos del tipo de recetas rips */
	public static final String TIPO_RECETA_AMBULATORIA = "1";

	public static final String TIPO_RECETA_URGENCIA = "2";

	/**
	 * Este es el tipo del paquete de parto
	 */
	public static final String TIPO_PAQUETE_PARTO = "01";
	
	public static final String DETALLE_PAQUETE_PROCEDIMIENTO = "01";
	public static final String DETALLE_PAQUETE_ARTICULO = "02";

	public static final String CONS_FURTRAN = "FURTRAN";

	// Estos son los tipos de sucursales
	public static final String TIPOS_SUCURSAL_CAJA_PREV = "01";
	public static final String TIPOS_SUCURSAL_IPS = "02";
	public static final String TIPOS_SUCURSAL_MEDICO_AUDITORES = "03";

	public static final String CAUSA_EXTERNA_ENFERMEDAD_GENERAL = "13";

	public static final String CAUSA_EXTERNA_ACCIDENTE_TRANSITO = "02";
	public static final String CAUSA_EXTERNA_EVENTO_CATASTROFICO = "06";

	public static final String CAUSA_EXTERNA_OTRA = "15";

	public static final String CONS_DETALLE_RECETA = "dtt_receta";
	public static final String CONS_MENSAJE = "msj";
	public static final String CONS_SOLICITUD = "sct";
	public static final String CONS_RECETA_EXTERNA = "rxt";

	public static final String FILTRO_MEDICO = "01";
	public static final String FILTRO_ENFERMERA = "02";
	public static final String FILTRO_MOSTRAR_TODOS = "00";

	// tipo aseguradora
	public static final String TIPO_ASEGURADORA_NO_APLICA = "01";
	public static final String TIPO_ASEGURADORA_EPS_REGIMEN_CONTRIBUTIVO = "02";
	public static final String TIPO_ASEGURADORA_EPS_REGIMEN_SUBSIDIADO = "03";
	public static final String TIPO_ASEGURADORA_PARTICULARES_PERSONAS_NATURALES = "04";
	public static final String TIPO_ASEGURADORA_EMPRESAS_SOCIALES_DEL_ESTADO_ESE = "05";
	public static final String TIPO_ASEGURADORA_EMPRESA_MEDICINA_PREPAGADA = "06";
	public static final String TIPO_ASEGURADORA_IPS = "09";
	public static final String TIPO_ASEGURADORA_ARL = "07";
	public static final String TIPO_ASEGURADORA_COMPANIAS_ASEGURADORAS_SOAT = "08";
	public static final String TIPO_ASEGURADORA_RED_UNIVERSITARIA = "10";
	public static final String TIPO_ASEGURADORA_VINCULADA = "11";

	public static final String MODELO_CAJA_RECIBO_COMPLETO = "01";
	public static final String MODELO_CAJA_PREVISION = "02";

	// tipo de empleado
	public static final String TIPO_AFILIADO_ADMINISTRATIVO = "A";
	public static final String TIPO_AFILIADO_CAJA_DE_PREVISION = "C";
	public static final String TIPO_AFILIADO_DOCENTE = "D";
	public static final String TIPO_AFILIADO_JUBILADO = "J";
	public static final String TIPO_AFILIADO_OFICIAL = "O";
	public static final String TIPO_AFILIADO_CONTRATISTA = "N";
	public static final String TIPO_AFILIADO_SUSTITUTO_DE_PENSION = "S";
	public static final String TIPO_AFILIADO_RED_UNIVERSITARIA_DE_SALUD_RUS = "R";

	public static final String CONS_CONTROL_SIGNOS = "CONS_CONTROL_SIGNOS";

	public static final String ESTADO_VACUNA_NUEVA = "00";
	public static final String ESTADO_VACUNA_VACUNA_COLOCADA = "01";
	public static final String ESTADO_VACUNA_CRITERIO_MEDICO = "02";

	public static final Object CONS_NRO_IDENTIFICACION_PACIENTE = "NDP";

	public static final String COMPROBANTE_FACTURA_GLOSA = "09";

	public static String SOLICITUD_TECNICA_CAJA_PREV = "02";

	public static String MEDICO_POR_DEFECTO = "000000000";

	public static String _NRO_IDENTIFICACION_NO_EXISTENTE = "NE00000";
	public static String _TIPO_IDENTIFICACION_NO_EXISTENTE = "TE";

	public static final String _TIPO_ADMINISTRADORA_NO_EXISTENTE = "PRT001";
	public static final String _TIPO_CONTRATO_NO_EXISTENTE = "PRT001";

	public static final Object TIPO_ID_TARJETA_IDENTIDAD = "TI";

	public static final String ESTADO_AFILIACION_ACTIVO = "01";
	public static final String ESTADO_AFILIACION_RETIRADO = "02";
	public static final String ESTADO_AFILIACION_SUSPENDIDO = "03";

	public static final String ELEMENTO_TIPO_UNIDAD_FUNCIONAL = "tipo_unidad_funcional";
	public static final String ELEMENTO_TIPO_REPORTE_CON_FIRMA = "reporte_con_firma";

	public static final String TIPO_REPORTE_FACTURA_ANTERIOR = "01";
	public static final String TIPO_REPORTE_FACTURA_ESE_CARTAGENA = "02";

	public static final String IMPORTADOR_MSJ = "I_MSJ";
	public static final String IMPORTADOR_POSIBLES_PACIENTES_REPETIDOS = "I_PPR";
	public static final String IMPORTADOR_PACIENTES_OTRA_ASEGURADORA = "I_OA";
	public static final String IMPORTADOR_NACIDOS_VIVOS = "I_NV";

	public static final String IMPORTADOR_INTERNO_PACIENTE = "I_IP";
	public static final String IMPORTADOR_INTERNO_LISTADO_PACIENTES = "I_ILP";
	public static final String IMPORTADOR_INTERNO_LISTADO_CONTRATOS = "I_ILC";
	public static final String IMPORTADOR_INTERNO_ADICIONAL_PACIENTE = "I_IAP";
	public static final String IMPORTADOR_INTERNO_INFORMACION = "I_II";

	public static final String AMBITO_REALIZACION_PROCEDIMIENTO_AMBULATORIO = "1";
	public static final String AMBITO_REALIZACION_PROCEDIMIENTO_HOSPITALARIO = "2";
	public static final String AMBITO_REALIZACION_PROCEDIMIENTO_URGENCIAS = "3";

	public static final String TIPO_ATENCION_AMBULATORIO = "003";
	public static final String TIPO_ATENCION_HOSPITALIZACION = "001";
	public static final String TIPO_ATENCION_URGENCIAS_OBSERVACION = "002";
	public static final String TIPO_ATENCION_EVENTO = "004";

	public static final String TIPO_CONTRATO_CAPITADA = "01";
	public static final String TIPO_CONTRATO_INDIVIDUAL_EVENTO = "02";
	public static final String TIPO_CONTRATO_AGRUPADA = "03";
	public static final String TIPO_CONTRATO_PORTABILIDAD = "04";

	//public static final String COMPROBANTE_FACTURA_CAPITADA = "16";
	//Se cambia por 15 porque el al final tambien esta factura es una factura clinica
	public static final String COMPROBANTE_FACTURA_CAPITADA = "15";

	public static final String TIPO_FACTURA_CAP_INTERNA = "CAP";
	public static final String TIPO_FACTURA_EVENTO_IND = "IND";
	public static final String TIPO_FACTURA_AGRUPADA = "AGR";
	public static final String TIPO_FACTURA_PORTABILIDAD = "POR";
	public static final String TIPO_FACTURA_GLOSA = "FHC";
	public static final String TIPO_FACTURA_CAP = "GEN_CAP";

	public static final String TIPO_ARTICULO_MEDICAMENTO = "01";
	public static final String TIPO_ARTICULO_MATERIALES_INSUMO = "02";
	public static final String TIPO_ARTICULO_SERVICIOS = "03";

	public static final String TIPO_MANUAL_SOAT = "01";
	public static final String TIPO_MANUAL_ISS01 = "02";
	public static final String TIPO_MANUAL_ISS04 = "03";
	public static final String TIPO_MANUAL_ISSEXT = "04";

	public static final String PROCEDIMIENTO_TRATAMIENTO_990201 = "5755";
	public static final String PROCEDIMIENTO_TRATAMIENTO_992990 = "5786";
	public static final String PROCEDIMIENTO_TRATAMIENTO_990101 = "5743";

	public static final String PROCEDIMIENTO_VIH_906249 = "5118";

	/* procedimiento de sala de observacion tanto en cups como en soat */
	public static final String CODIGO_CUPS_PROCEDIMIENTO_OBSERVACION = "S20000";
	// POr migracion de la 029 la observacion en soat es S20000 y antes era //
	// 38915

	public static final String PROCEDIMIENTO_AGUDEZA_VISUAL = "5604";

	// procedimientos citología
	public static final String PROCEDIMIENTO_TOMA_CITOLOGIA = "4443";
	public static final String PROCEDIMIENTO_LECTURA_CITOLOGIA = "4488";

	// procedimientos cancer de seno
	public static final String PROCEDIMIENTO_CANCER_SENO = "5758";

	public static final String PROCEDIMIENTO_CANCER_SENO2 = "5759";

	public static final String TRASLADO_SIMPLE = "5898";
	public static final String TRASLADO_MECANIZADO_SIMPLE = "5904";
	public static final String TRASLADO_REDONDO_BASICO = "5899";
	public static final String TRASLADO_REDONDO_MECALIZADO = "5905";

	public static final String PROCEDIMIENTO_990104 = "5746";
	public static final String PROCEDIMIENTO_990204 = "5759";

	public static final String PROCEDIMIENTO_990101 = "5743";

	public static final String PROCEDIMIENTO_990201 = "5755";
	public static final String PROCEDIMIENTO_992990 = "5786";

	public static final String PARENTESCO_OTROS = "0";
	public static final String PARENTESCO_CONYUGE = "1";
	public static final String PARENTESCO_HIJO = "2";
	public static final String PARENTESCO_PADRE_MADRE = "3";
	public static final String PARENTESCO_HIJO_DEPENDIENTE = "4";
	public static final String PARENTESCO_ABUELOS = "5";
	public static final String PARENTESCO_NIETOS = "6";
	public static final String PARENTESCO_HERMANO = "7";
	public static final String PARENTESCO_SOBRINO = "8";
	public static final String PARENTESCO_TIO = "9";
	public static final String PARENTESCO_HIJO_CONYUGE = "10";

	public static final String TIPO_USUARIO_CONFIG_AUDITOR = "01";
	public static final String TIPO_USUARIO_CONFIG_MEDICO_GENERAL = "02";
	public static final String TIPO_USUARIO_CONFIG_MEDICO_ESPECIALISTA = "03";

	public static final String PERSONAL_ATIENDE_MEDICO_ESPECIALISTA = "1";

	public static final String TIPO_SERVICIO_AUTO_PROCEDIMIENTOS = "01";
	public static final String TIPO_SERVICIO_AUTO_MEDICAMENTOS = "02";

	public static final String MODO_COBRO_RECIBOS_CAJA_PROCEDIMIENTOS = "01";
	public static final String MODO_COBRO_RECIBOS_CAJA_MEDICAMENTOS = "02";

	public static final String COLUMNAS_ARCHIVO[] = { "CARNET", "CODIGO",
			"TIPO_IDENTIFICACION", "NUMERO_IDENTIFICACION", "PRIMER_APELLIDO",
			"SEGUNDO_APELLIDO", "PRIMER_NOMBRE", "SEGUNDO_NOMBRE",
			"FECHA_NACIMIENTO", "SEXO", "DEPARTAMENTO", "MUNICIPIO", "ZONA",
			"FECHA_AFILIACION", "TIPO POBLACION", "NIVEL_SISBEN",
			"FICHA_SISBEN", "MODALIDAD SUBSIDIO", "BARRIO", "DIRECCION" };

	public static final String LLAVE_CONTRATO = "llave_contrato";
	public static final String LLAVE_FURIPS = "llave_furips";

	public static final String PARAM_EXCEPCION = "_PE";

	public static final String PARAM_ADMISION = "_PA";

	public static final String PARAM_EVENTQUEUE_ADMISION = "_EQA";
	public static final String PARAM_EVENTQUEUE_COMUNICADO = "_EQC";

	public static final String ESTADO_ADMISION_ACTIVA = "1";
	public static final String ESTADO_ADMISION_FACTURADA = "2";
	public static final String ESTADO_ADMISION_CANCELADA = "3";

	public static final String ESTILO_COLOR_ADMISION_ACTIVA = "background-color:#61C8ED;";
	public static final String ESTILO_COLOR_ADMISION_FACTURADA = "background-color:#C1EB60;";
	public static final String ESTILO_COLOR_ADMISION_CANCELADA = "background-color:#EBABB1;";

	// New Constants
	public static final String GLOSA_LEVANTADA = "2";
	public static final String HistorialObservacionMacro_HISTORIAL = "HO";
	public static final String ServiciosFacturacionMacro_FECHA_REALIZACION = "FEC_REAL";
	public static final String ServiciosFacturacionMacro_NRO_AUTORIZACION = "_NA";
	public static final String ServiciosFacturacionMacro_DETALLE_NUEVO = "DF_N";
	public static final String ServiciosFacturacionMacro_DETALLE_FACTURA = "DF";
	public static final String ServiciosFacturacionMacro_MAP_SERVICIOS = "MS";
	public static final String ServiciosFacturacionMacro_MAP_FACT_SERVICIOS = "MFS";
	public static final String ServiciosFacturacionMacro_MAP_SERVICIOS_ELIMINAR = "MSE";

	public enum EModeloGlosa {
		INDIVIDUAL, GRUPAL
	};

	/**
	 * Esta anotacion me permite realizar los registros de NE (Novedades regimen
	 * especial) para las entidades especiales
	 * 
	 * @author Luis Miguel
	 * */
	@Retention(RetentionPolicy.RUNTIME)
	@Target(ElementType.FIELD)
	public @interface NE_REGIMEN_ESPECIAL {
		String codigo();

		int posicion();
	}
}
